ses-ux
POST-TMF702 transferPrimaryDeviceEsimSub
Transfer Primary Device eSIM Subscription
This operation is used to transfer Primary Device eSIM Subscription
URL
http://{host:port}/{context}/esintegration/v1.0/esim/transferPrimaryDeviceEsimSub
URL Param
name | type | description | required |
---|---|---|---|
context | string | Context carries the method of the resource and allowed values are post, get and patch | Y |
Header
Se definen las cabeceras del request a utilizar.
name | value | description | required |
---|---|---|---|
x-transaction-id | string | The unique ID of this request. It is generated by the sender and the unique ID must be returned to the originator. Generally, uuid is used for the xtransaction-id. | Y |
Content-Type | string | The content type of the request. | Y |
Content-Length | string | The content length of the request. | Y |
Accept | string | The accepted body type in the response. | Y |
authorization | string | The credential of SES. HTTP basic authentication and OAuth access token bearer are supported. | Y |
x-deviceauth-mode | string | The device authorization mode. Applicable values: IP AKA GBA OTHER | N |
x-device-type | string | The device type. Applicable values: Handheld with SIM Handheld without SIM Tablet with SIM Tablet without SIM Wearable with SIM Wearable without SIM Set-of-Box with SIM Set-of-Box without SIM Laptop with SIM Laptop without SIM Desktop with SIM Desktop without SIM Appliance with SIM Appliance without SIM Automotive withSIM Automotive without SIM Other/Unspecified with SIM Other/Unspecified without SIM Companion Appfor RemoteDevices Web Client Customer care | N |
x-nsds-version | string | The NSDS version of the device. Applicable values: 1.0: This group is determined for iOS devices. | N |
Request
curl --location 'https://nonprod.esb.cloud.lla.com/dev/ses-ux/post/esintegration/v1.0/esim/transferPrimaryDeviceEsimSub' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic MmZkNjE1OTlhN2U3NDFlYjk3ZDQxZDRlM2QzOWUwMGY6YTI3ZTk1NzcwNzBkNDI2MjkxNmQ4ZTc3NDI2ZTNGODE=' \
--data '{
"oldPrimaryDeviceInfo": {
"eid": "8986010110231170984S",
"deviceType": "iPhone",
"deviceVendor": "Apple",
"osType": "iOS",
"osVersion": "15.0",
"carrierBundleVersion": "21.0",
"subscriptionList": [
{
"primaryImsi": "460019876543210",
"primaryMsisdn": "8613922114719",
"iccidProfile": {
"imei": "356979067872692",
"iccid": "356935435417269",
"simType": 0,
"uiccSignatureStatus": 0
}
},
{
"primaryImsi": "460019876543211",
"primaryMsisdn": "8613922114720",
"iccidProfile": {
"imei": "356979067872693",
"iccid": "356935435417270",
"simType": 1
}
}
]
},
"newPrimaryDeviceInfo": {
"eid": "8986010110231170985S",
"deviceType": "iPhone",
"deviceVendor": "Apple",
"osType": "iOS",
"osVersion": "15.0",
"carrierBundleVersion": "21.0",
"simAllianceProfileVersion": "2.0.0",
"gsmaSgp22Version": "2.0.0",
"iccidProfileList": [
{
"imei": "356979067872695",
"iccid": "356935435417278"
},
{
"imei": "356979067872696",
"iccid": "356935435417279"
}
]
},
"planInfo": {
"operatorId": "operator A"
},
"transferFlowType": 1,
"subscriberInfo": {
"billingAccountNumber": "Account A"
}
}'
Definitions
Each of the request parameters is detailed.
name | type | description | required |
---|---|---|---|
oldPrimaryDeviceInfo | object | The old primary-device object info contains the subscription information of the old primary device. | Y |
oldPrimaryDeviceInfo.eid | string | The EID of the primary eSIM device. | N |
oldPrimaryDeviceInfo.deviceType | string | The model of the device assigned by the device vendor. | N |
oldPrimaryDeviceInfo.deviceVendor | string | The vendor of the eSIM device initiates the transfer operation. | N |
oldPrimaryDeviceInfo.osType | string | The specific OS type of the eSIM device, For example: iOS, Android, Windows. | N |
oldPrimaryDeviceInfo.osVersion | string | The specific OS version of the eSIM device. | N |
oldPrimaryDeviceInfo.carrierBundleVersion | string | The specific bundle version of the carrier. | N |
oldPrimaryDeviceInfo.subscriptionList | array | The array of the subscriptions which have been activated on the primary eSIM device. | Y |
oldPrimaryDeviceInfo.subscriptionList.primaryImsi | string | The IMSI of the primary device’s subscription. When the device has only one subscription, it is always mandatory. When there are multiple subscriptions on it, the UE may not send SES the subscription of the primary IMSI not associated to the current IMSI. | N |
oldPrimaryDeviceInfo.subscriptionList.primaryMsisdn | string | The MSISDN of the primary device’s subscription linked to the primary MSISDN. | N |
oldPrimaryDeviceInfo.subscriptionList.iccidProfile. | object | An array of e-UICC profiles on the new primary eSIM device to be activated. For the e-UICC profile | Y |
oldPrimaryDeviceInfo.subscriptionList.iccidProfile.imei | string | The IMEI of the e-UICC. | N |
oldPrimaryDeviceInfo.subscriptionList.iccidProfile,iccid | string | The ICCID of the e-UICC. | N |
oldPrimaryDeviceInfo.subscriptionList.iccidProfile.simType | integer | The SIM type of the old UICC profile, possible values: 0: Unknown 1: Physical SIM 2: eSIM 3: Virtual SIM | N |
oldPrimaryDeviceInfo.subscriptionList.iccidProfile.uiccSignatureStatus | integer | The status of the UICC signature validation. The purpose of this validation is to prove that the SIM card to be transferred is bound to the old primary device. Possible values: 0: Validation passes 1: Validation fails 2: UE doesn’t support validation | N |
newPrimaryDeviceInfo | object | The new primary-device object info contains the subscription information of the new primary device. The new primary device info can be an empty object if the transfer is triggered from the old device without any new device info. | Y |
newPrimaryDeviceInfo.eid | string | The EID of the primary eSIM device. | N |
newPrimaryDeviceInfo.deviceType | string | The model of the device assigned by the device vendor. | N |
newPrimaryDeviceInfo.deviceVendor | string | The vendor of the eSIM device initiates the transfer operation. | N |
newPrimaryDeviceInfo.osType | string | The specific OS type of the eSIM device, For example: iOS, Android, Windows. | N |
newPrimaryDeviceInfo.osVersion | string | The specific OS version of the eSIM device. | N |
newPrimaryDeviceInfo.carrierBundleVersion | string | The specific bundle version of the carrier. | N |
newPrimaryDeviceInfo.simAllianceProfileVersion | string | A string representing the highest SIM Alliance profile version supported by the e-UICC. It is defined by the e-UICC capabilities. The minimum version supported is 2.0.0. For example, value 2.1.0 means that eUICC supports both 2.1.0 and 2.0.0 | N |
newPrimaryDeviceInfo.gsmaSgp22Version | string | A string representing the GSMA SGP.22 specification version supported by the e-UICC. | N |
newPrimaryDeviceInfo.iccidProfileList | array | An array of e-UICC profiles on the new primary eSIM device to be activated. | N |
newPrimaryDeviceInfo.iccidProfileList.imei | string | The IMEI of the e-UICC. | N |
newPrimaryDeviceInfo.iccidProfileList.iccid | string | The ICCID of the e-UICC. | N |
planInfo | object | The information of the plan to be transferred. | |
planInfo.operatorId | string | The specific operator identity that the plan belongs to. | N |
transferFlowType | integer | When the transfer happens, possible values are: 1: During the new eSIM device boot up, the first-time end user set up the device. 2: After the eSIM device boot up. | N |
subscriberInfo | object | The basic information of the subscriber who triggers the operation | N |
subscriberInfo.billingAccountNumber | string | The account number to pay for the subscription. | N |
Response
[ 202 ]
success response
{}
Possible response error
In this section all the possible data structures received by the client are defined and that must be considered as unsatisfactory when responding to the method.
[ 400 ]
Bad Request - the request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.
{
"error": "Invalid_Request",
"error_description": "The request is invalid, <Specific invalid parameter>."
}
[ 404 ]
Not Found - server has not found a resource with that URI. This may be temporary and permanent condition. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.
{
"error": "Primary_Device_Not_Found",
"error_description": "The primary device not find in the backend system"
}
[ 500 ]
Internal Server Error - server encountered an error processing request. This should not happen normally, but it is a generic error message, given when no more specific message is suitable.
{
"error": "Internal Server Error",
"error_description": "Error when check the eSIM eligibility, <Specific error description>."
}